//---------------------------------------------------------------------------
#pragma hdrstop
#include "classeListaDuplamenteLigada.h"
//---------------------------------------------------------------------------

ListaDuplamenteLigada::ListaDuplamenteLigada()
{
	ptrListaDuplamenteLigada = new ListaCDL;
}
//---------------------------------------------------------------------------
ListaDuplamenteLigada::~ListaDuplamenteLigada()
{
	delete ptrListaDuplamenteLigada;
	ptrListaDuplamenteLigada = NULL;
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::insereInicio(String n)
{
	ptrListaDuplamenteLigada->insereInicio(n);
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::insereX(String x, int posicao)
{
	ptrListaDuplamenteLigada->insereX(x, posicao);
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::insereFinal(String f)
{
	ptrListaDuplamenteLigada->insereFinal(f);
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::consultaInicio()
{
	return ptrListaDuplamenteLigada->consultaInicio();
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::consultaX(int posicao)
{
	return ptrListaDuplamenteLigada->consultaX(posicao);
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::consultaAtual()
{
	return consultaX(getPosicao_Atual());
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::consultaFinal()
{
	return ptrListaDuplamenteLigada->consultaFinal();
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::consultaAnterior()
{         
	if (getPosicao_Atual() == 1)
	{
		return ptrListaDuplamenteLigada->consultaAtual();
	}
	else
	{
		return ptrListaDuplamenteLigada->consultaAnterior();
	}
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::consultaProximo()
{
	if (getPosicao_Atual() == getTamanho())
	{
		return ptrListaDuplamenteLigada->consultaFinal();
	}
	else
	{
		return ptrListaDuplamenteLigada->consultaProximo();
    }
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::removeInicio()
{
	ptrListaDuplamenteLigada->removeInicio();
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::removeX(int posicao)
{
	ptrListaDuplamenteLigada->removeX(posicao);
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::removeFinal()
{
	ptrListaDuplamenteLigada->removeFinal();
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::limpar()
{
	ptrListaDuplamenteLigada->limpar();
}
//---------------------------------------------------------------------------
int ListaDuplamenteLigada::getTamanho()
{
	return ptrListaDuplamenteLigada->getTamanho();
}
//---------------------------------------------------------------------------
int ListaDuplamenteLigada::getPosicao_Atual()
{
	return ptrListaDuplamenteLigada->getPosicao_Atual();
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::listar(TStrings *itens)
{
	ptrListaDuplamenteLigada->listar(itens);
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::altera(String v)
{
	ptrListaDuplamenteLigada->altera(v);
}
//---------------------------------------------------------------------------
void ListaDuplamenteLigada::removeFaixa(int min, int max)
{
	ptrListaDuplamenteLigada->removeFaixa(min, max);
}
//----------------------------------------------
void ListaDuplamenteLigada::remove(String v)
{
	ptrListaDuplamenteLigada->remove(v);
}
//-------------------------------------------------------------------
   String ListaDuplamenteLigada::consultaMin()
{
	return ptrListaDuplamenteLigada->consultaMin();
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::consultaMax()
{
	return ptrListaDuplamenteLigada->consultaMax();
}
//---------------------------------------------------------------------------
String ListaDuplamenteLigada::buscaValor(String v)
{
	return ptrListaDuplamenteLigada->buscaValor(v);
}

#pragma package(smart_init)
